// 1. 导入 Vue 3 路由核心 API（替换 Vue 2 的 VueRouter）
import { createRouter, createWebHistory } from 'vue-router'
// 导入页面组件（路径不变，确保文件存在）
import Login from '../views/deliver/LoginView.vue'
import Register from '../views/deliver/RegisterView.vue'
import Dashboard from '../views/deliver/DeliverIndexView.vue'
import LayOutView from '../views/user/LayoutView.vue'
import UserLogin from '../views/user/LoginView.vue'
import UserRegister from '../views/user/RegisterView.vue'
import UserIndex from '@/views/user/UserIndex.vue'

// 2. 定义路由规则（完全不变，与 Vue 2 兼容）
const routes = [
  { path: '/', redirect: '/user/login' },
  { path: '/login', name: 'Login', component: Login },
  { path: '/register', name: 'Register', component: Register },
  {
    path: '/user/login', name: 'UserLogin', component: UserLogin
  },
  {
    path: '/user/register', name: 'UserRegister', component: UserRegister
  },
  {
    path: '/user/layout', name: 'LayoutView', component: LayOutView
  },
   {
    path: '/user/index', name: 'UserIndex', component: UserIndex
  },
  {
    path: '/dashboard',
    name: 'Dashboard',
    component: Dashboard,
    meta: { requiresAuth: true } // 保留“需登录访问”的元信息
  }
]

// 3. 创建路由实例（Vue 3 关键修改点）
const router = createRouter({
  // 替换 Vue 2 的 mode: 'history'，用 createWebHistory() 实现相同功能
  history: createWebHistory(),
  routes // 注入路由规则（不变）
})

// 4. 可选：添加登录拦截（逻辑不变，适配 Vue 3 导航守卫）
router.beforeEach((to, from, next) => {
  if (to.meta.requiresAuth) {
    // 从 localStorage 获取 token 判断登录状态（逻辑不变）
    const token = localStorage.getItem('token')
    token ? next() : next('/login')
  } else {
    next()
  }
})

// 5. 导出路由实例（不变）
export default router